home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Java for 3D & VRML Worlds
/
Java for 3d and VRML Worlds.iso
/
examples
/
chap06
/
LionMovie.wrl
< prev
next >
Wrap
Text File
|
1996-10-15
|
2KB
|
77 lines
#VRML V2.0 utf8
#
# lion is moving toward you.
#
DEF LION_TRANS Transform{
children[
Billboard{
axisOfRotation 0 0 0
children[
Shape{
geometry IndexedFaceSet{
coord Coordinate{
point[ 0 0 0,
1 0 0,
1 1 0,
0 1 0]
}
coordIndex[ 0, 1, 2, 3]
}
appearance Appearance{
texture DEF LION_MOVIE MovieTexture{
loop TRUE
url "lion_movie.gif"
startTime 0
stopTime 1 # initially not playing
}
}
},
DEF LION_TOUCH TouchSensor{}
]
}
]
}
DEF LION_PROX ProximitySensor{
size 200 200 200 # big enough
}
DEF LION_TIME TimeSensor{
loop TRUE
cycleInterval 0.2
startTime 0
stopTime 1 # initially deactivated
}
DEF LION_SCRIPT Script{
url "LionMovie.class"
# when you click the lion...
eventIn SFTime touched
eventOut SFTime startLion
eventOut SFTime stopLion
# when the lion is moving toward you...
eventIn SFTime interval
eventOut SFVec3f setLionPosition
# watch your current position.
eventIn SFVec3f getUserPosition
}
# when you click the lion...
ROUTE LION_TOUCH.touchTime TO LION_SCRIPT.touched
ROUTE LION_SCRIPT.startLion TO LION_MOVIE.startTime
ROUTE LION_SCRIPT.startLion TO LION_TIME.startTime
ROUTE LION_SCRIPT.stopLion TO LION_MOVIE.stopTime
ROUTE LION_SCRIPT.stopLion TO LION_TIME.stopTime
# when the lion is moving toward you...
ROUTE LION_TIME.cycleTime TO LION_SCRIPT.interval
ROUTE LION_SCRIPT.setLionPosition TO LION_TRANS.set_translation
# watch your current position
ROUTE LION_PROX.position_changed TO LION_SCRIPT.getUserPosition